#ifndef _KEYS_H
#define _KEYS_H
#define _WIN32_LEAN_AND_MEAN
#include <Windows.h>

//////////////////////////////////////////////////////////////////////////////////////////////
//																							//
//		Author:Michael Mozdzierz															//
//		Date: 10/06/2014																	//
//																							//
//////////////////////////////////////////////////////////////////////////////////////////////

// Enumerates key values from the keyboard
enum class Keys : int
{
	////////////<Oem Keys>//////////////////////////
	OEM_0 = 48,
	OEM_1,
	OEM_2,
	OEM_3,
	OEM_4,
	OEM_5,
	OEM_6,
	OEM_7,
	OEM_8,
	OEM_9,
	OEM_SIMICOLON = VK_OEM_1,
	OEM_EQUAL = VK_OEM_NEC_EQUAL,
	OEM_MINUS = VK_OEM_MINUS,
	OEM_BACKSLASH = VK_DIVIDE,
	OEM_LBRACKET = VK_OEM_6,
	OEM_FORWARDSLASH,
	OEM_RBRACKET,
	OEM_SINGLEQUOTE = VK_OEM_7,
	OEM_COMMA = VK_OEM_COMMA,
	OEM_PERIOD = VK_OEM_PERIOD,
	OEM_TILDE = VK_OEM_3,
	OEM_DELETE,
	///////////////////////////////////////////////

	/////////////////<Alphabet>////////////////////
	A = 65, B, C, D, E, F, G, H, I, J, K, L, M, N, 
	O, P, Q, R, S, T, U, V, W, X, Y, Z,
	///////////////////////////////////////////////

	///////////////<Function Keys>/////////////////
	F1 = 112, F2, F3, F4, F5, F6, F7, F8, F9, F10, F12,
	//////////////////////////////////////////////

	///////////////<Numpad Keys>//////////////////
	NUM_1 = 60, NUM_2, NUM_3, NUM_4, NUM_5,
	NUM_6, NUM_7, NUM_8, NUM_9, NUM_0,
	NUM_STAR, NUM_PLUS,	NUM_ENTER, 
	NUM_DASH, NUM_PERIOD, NUM_SLASH, 
	//////////////////////////////////////////////

	//////////////<Functional Keys>///////////////
	Backspace = 8,
	Tab,
	Enter,
	LShift,
	RShift,
	LCtrl,
	RCtrl,
	Capslock,
	Spacebar = 32,
	PageUp,
	PageDown,
	LAlt,
	RAlt,
	End,
	Home,
	Escape,
	Insert,
	Delete,
	NumLock,
	//////////////////////////////////////////////

	/////////////<Arrow keys>/////////////////////
	LeftArrow = 37,
	RightArrow,
	UpArrow,
	DownArrow,
	//////////////////////////////////////////////
};

enum class MouseButtons
{
	Left = VK_LBUTTON,
	Middle = VK_MBUTTON,
	Right = VK_RBUTTON,
};

#endif